home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1994 November / macformat-018.iso / Utility Spectacular / Text / info-for-Emacs-1.12d folder / info / emacs-13 < prev    next >
Encoding:
GNU Info File  |  1993-10-14  |  49.6 KB  |  1,330 lines  |  [TEXT/EMAC]

  1. This is Info file ../info/emacs, produced by Makeinfo-1.49 from the
  2. input file emacs.texi.
  3.  
  4.    This file documents the GNU Emacs editor.
  5.  
  6.    Copyright (C) 1985, 1986, 1988, 1992 Richard M. Stallman.
  7.  
  8.    Permission is granted to make and distribute verbatim copies of this
  9. manual provided the copyright notice and this permission notice are
  10. preserved on all copies.
  11.  
  12.    Permission is granted to copy and distribute modified versions of
  13. this manual under the conditions for verbatim copying, provided also
  14. that the sections entitled "The GNU Manifesto", "Distribution" and "GNU
  15. General Public License" are included exactly as in the original, and
  16. provided that the entire resulting derived work is distributed under the
  17. terms of a permission notice identical to this one.
  18.  
  19.    Permission is granted to copy and distribute translations of this
  20. manual into another language, under the above conditions for modified
  21. versions, except that the sections entitled "The GNU Manifesto",
  22. "Distribution" and "GNU General Public License" may be included in a
  23. translation approved by the author instead of in the original English.
  24.  
  25. 
  26. File: emacs,  Node: TeX Mode Changes,  Next: Shell Changes,  Prev: Filling Changes,  Up: Version 19
  27.  
  28. Changes in TeX Mode
  29. ===================
  30.  
  31.    The old TeX mode bindings of `M-{' and `M-}' have been moved to `C-c
  32. {' and `C-c }'.  (These commands are `up-list' and `tex-insert-braces';
  33. they are the TeX equivalents of `M-(' and `M-)'.)
  34.  
  35.    The new command `C-c C-o' (`tex-latex-block') inserts a matching
  36. `\begin'--`\end' pair.  The new command `C-c C-e'
  37. (`tex-close-latex-block') inserts a matching `\end' for the last
  38. unterminated `\begin'.
  39.  
  40.    You can run BibTeX on the current file using `C-c TAB'
  41. (`tex-bibtex-file').
  42.  
  43.    There is a new command `C-c C-v' (`tex-view') for running a DVI
  44. previewer.
  45.  
  46.    You can specify the directory to use for running TeX by setting the
  47. variable `tex-directory'.  `"."' is the default value.  If your
  48. environment variable `TEXINPUTS' contains relative directory names, or
  49. if your files contains `\input' commands with relative file names, then
  50. `tex-directory' *must* be `"."' or you will get the wrong results. 
  51. Otherwise, it is safe to specify some other directory, such as `/tmp'.
  52.  
  53.    There is now a third variant of TeX mode, for SliTeX.  This is in
  54. addition to the variants for plain TeX and LaTeX.  As before, the
  55. correct variant is chosen automatically when you visit a file.
  56.  
  57. 
  58. File: emacs,  Node: Shell Changes,  Next: Spell Changes,  Prev: TeX Mode Changes,  Up: Version 19
  59.  
  60. Changes in Shell Mode
  61. =====================
  62.  
  63.    Shell mode has been completely replaced with a new implementation.
  64. The basic idea is the same: Emacs runs a subshell, and all input and
  65. output to the subshell go through the shell buffer.  But the special
  66. commands of Shell mode have been redesigned.
  67.  
  68. `TAB'
  69.      Complete the file name before point in the shell buffer
  70.      (`comint-dynamic-complete').
  71.  
  72. `M-?'
  73.      To get a list of all possible completions of the file name before,
  74.      type `M-?'  (`comint-dynamic-list-completions').
  75.  
  76. `M-p'
  77. `M-n'
  78.      There is a new convenient history mechanism for repeating previous
  79.      shell inputs.  Use the command `M-p' (`comint-previous-input') to
  80.      recall the last input; it copies the text of that input to the
  81.      place where you are editing.  If you repeat `M-p', it replaces the
  82.      copied input with successively earlier inputs.  `M-n' is similar
  83.      but goes in the opposite direction, towards the present
  84.      (`comint-next-input').
  85.  
  86.      When you find the previous input you want, you can resubmit it by
  87.      typing RET, or you can edit it first and then resubmit it if you
  88.      wish.
  89.  
  90.      These shell history commands operate outside the minibuffer, but
  91.      they are completely analogous to the minibuffer history commands.
  92.  
  93. `M-r'
  94. `M-s'
  95.      You can also use `M-r' and `M-s' to search for (respectively)
  96.      earlier or later inputs starting with a given string.  First type
  97.      the string, then type `M-r' (`comint-previous-matching-input') to
  98.      yank a previous input from the history which starts with that
  99.      string. You can repeat `M-r' to find successively earlier inputs
  100.      starting with the same string.
  101.  
  102.      You can start moving in the opposite direction (toward more recent
  103.      inputs) by typing `M-s' (`comint-next-matching-input') instead of
  104.      `M-r'.  As long as you don't use any commands except `M-r' and
  105.      `M-s', they keep using the same string that you had entered
  106.      initially.
  107.  
  108.      These commands serve a purpose similar to that of `M-r' and `M-s'
  109.      in the minibuffer, but do not work in quite the same way.  We may
  110.      change the interface of these commands, as well as that of the
  111.      analogous minibuffer commands; one goal will be to make the two
  112.      sets of commands compatible.  But we haven't yet figured out which
  113.      of the possible interfaces is best.  To find out what interface is
  114.      actually supported in Emacs 19, type `C-h f
  115.      comint-previous-matching-input RET'.
  116.  
  117. `C-c C-o'
  118.      Kill the last batch of output from a shell command
  119.      (`comint-kill-output').  This is useful if a shell command spews
  120.      out lots of output that just gets in the way.
  121.  
  122. `C-c C-r'
  123.      Scroll to display the beginning of the last batch of output at the
  124.      top of the window; it also moves the cursor there
  125.      (`comint-show-output').
  126.  
  127. `C-a'
  128.      If you type `C-a' on a line that starts with a shell prompt, it
  129.      moves to the end of the prompt, not to the very beginning of the
  130.      line.
  131.  
  132. `C-d'
  133.      Typed at the end of the shell buffer, `C-d' sends EOF to the
  134.      subshell.  Typed at any other position in the buffer, `C-d'
  135.      deletes a character as usual.
  136.  
  137. `M-x dirs'
  138.      If Emacs gets confused while trying to track changes in the shell's
  139.      current directory, type `M-x dirs' to re-synchronize.
  140.  
  141. `M-x send-invisible'
  142.      This command reads a line of text without echoing it, and sends it
  143.      to the shell.
  144.  
  145. `M-x comint-continue-subjob'
  146.      If you accidentally suspend your process, use this command to
  147.      continue it.
  148.  
  149. 
  150. File: emacs,  Node: Spell Changes,  Next: Tags Changes,  Prev: Shell Changes,  Up: Version 19
  151.  
  152. Changes in Spell Checking
  153. =========================
  154.  
  155.    Emacs 19 uses the Ispell program for spelling correction instead of
  156. the Unix spell program.  Ispell has many advantages; one is that it can
  157. be started the first time you check a word, and left running thereafter,
  158. which makes further checking much faster.  If you want to get rid of the
  159. Ispell process, use `M-x kill-ispell'.
  160.  
  161.    To check the entire current buffer, use `M-x ispell-buffer'.  Use
  162. `M-x ispell-region' to check just the current region.
  163.  
  164.    Ispell commands often involve interactive replacement of words. You
  165. can interrupt the interactive replacement with `C-g'. You can restart
  166. it again afterward with `C-u M-$'.
  167.  
  168.    Interactive replacement shows you one misspelling at a time and asks
  169. you what to do.  To answer, type one of the following characters:
  170.  
  171. `DIGIT'
  172.      Replace the word (this time) with one of the displayed near-misses.
  173.      The digit you use says which near-miss to use.
  174.  
  175. `a'
  176.      Accept this word this time.
  177.  
  178. `i'
  179.      Insert this word in your private dictionary so that Ispell will
  180.      consider it correct it from now on.
  181.  
  182. `r'
  183.      Replace the word this time with a string typed by you.
  184.  
  185.    When the Ispell process starts, it reads your private dictionary
  186. which is the file `~/ispell.words'.  Words that you "insert" with the
  187. `i' command are added to that file, but not right away--only at the end
  188. of the interactive replacement procedure.
  189.  
  190.    Use the `M-x reload-ispell' command to reload your private
  191. dictionary from `~/ispell.words' if you edit the file outside of Ispell.
  192.  
  193. 
  194. File: emacs,  Node: Mail Changes,  Next: Info Changes,  Prev: Tags Changes,  Up: Version 19
  195.  
  196. Changes in Mail Reading and Sending
  197. ===================================
  198.  
  199.    `%' is now a word-separator character in Mail mode.  This is because
  200. that character frequently appears in addresses.
  201.  
  202.    If you set the variable `mail-signature' non-`nil', then `mail'
  203. inserts the contents of your `.signature' file automatically when it
  204. initializes a mail buffer.  If you don't want your signature in a
  205. particular message, just delete it from the buffer before you send the
  206. message.
  207.  
  208.    You can specify the text to insert at the beginning of each line when
  209. you use `C-c C-y' to yank the message you are replying to.  Set
  210. `mail-yank-prefix' to the desired string.  A value of `nil' (the
  211. default) means to use indentation, as in Emacs 18.  If you use `C-u' by
  212. itself as the prefix argument to `C-c C-y', then it does not insert
  213. anything at the beginning of the lines, regardless of the value of
  214. `mail-yank-prefix'.
  215.  
  216.    You can easily convert an Rmail file to system mailbox format with
  217. the command `unrmail'.  This command reads two arguments, the name of
  218. the Rmail file to convert, and the name of the new mailbox file. The
  219. Rmail file is unchanged by this command.
  220.  
  221.    Rmail now initially positions you at the first message in the Rmail
  222. file that you have not seen.  This may not be a message that just
  223. arrived; it may have arrived in a previous session during which you did
  224. not select it.  You can then read all the unseen messages going
  225. forwards.
  226.  
  227.    When a message that you sent "bounces" back to you, you can retry
  228. sending it by typing `C-M-m' (`rmail-retry-failure') on the failure
  229. message.
  230.  
  231.    By contrast, the new command `M-x rmail-resend' is used for
  232. forwarding a message and marking it as "resentby" you, with the special
  233. header fields `Resent-by:' and `Resent-to:'.
  234.  
  235.    Another new Rmail command is `<', which moves to the first message.
  236. (This is for symmetry with `>'.)  `<' is actually an alias for `j'.
  237.  
  238.    `e' (`rmail-edit-current-message') is now the command to edit a
  239. message.  To expunge, type `x'.  We know this will surprise people some
  240. of the time, but the surprise will not be disastrous--if you type `e'
  241. meaning to expunge, just type `C-c C-c' to leave Rmail Edit mode, and
  242. then type `x'.
  243.  
  244.    The variable `rmail-output-file-alist' now controls the default for
  245. the file to output a message to.
  246.  
  247.    In the Rmail summary, `C-n' and `C-p' are now ordinary cursor motion
  248. commands.  To move in the summary *and* select a new message, use `n'
  249. and `p' (which skip deleted messages) or `M-n' and `M-p' (which stop at
  250. all messages).  These are, of course, the same commands you would use
  251. in the Rmail buffer.
  252.  
  253. 
  254. File: emacs,  Node: Tags Changes,  Next: Mail Changes,  Prev: Spell Changes,  Up: Version 19
  255.  
  256. Changes in Tags Commands
  257. ========================
  258.  
  259.    `M-.' (`find-tag') and the other commands to find a tag now look
  260. first for an exact match in the tags table, and try substring matches
  261. only afterward.
  262.  
  263.    Another change in `M-.' is that it has no effect on what `M-,' will
  264. do subsequently.  You can no longer use `M-,' to find the next similar
  265. tag; instead, use `M-.' with a prefix argument.
  266.  
  267.    The new command `find-tag-regexp' successively visits the tags that
  268. match a specified regular expression.
  269.  
  270.    You can now use more than one tags table.  Using `visit-tags-table'
  271. to load a new tags table does not discard the other tables previously
  272. loaded.  The other tags commands use all the tags tables that are
  273. loaded; the first one they use is the one that mentions the current
  274. visited file.
  275.  
  276.    You can specify a precise list of tags tables by setting the variable
  277. `tags-table-list' to a list of strings, like this:
  278.  
  279.      (setq tags-table-list
  280.            '("~/emacs" "/usr/local/lib/emacs/src"))
  281.  
  282. This tells `find-tag' to look at the `TAGS' files in your `~/emacs'
  283. directory and in the `/usr/local/lib/emacs/src' directory.  The order
  284. depends on which file you are in and which tags table mentions that
  285. file, as explained above.
  286.  
  287.    You can now use the tags table for completion of names during
  288. ordinary editing.  The command `M-TAB' (except in Emacs Lisp and Lisp
  289. Interaction modes) completes the identifier in the buffer before point,
  290. using the set of all tags as the list of possible completions.
  291.  
  292.    `tags-query-replace' and `tags-search' now create buffers only
  293. temporarily for the files that they have to search (those which are not
  294. already visited in Emacs buffers).  If one of these files contains a
  295. match for the search pattern, then its buffer continues to exist;
  296. otherwise, it is killed.
  297.  
  298. 
  299. File: emacs,  Node: Info Changes,  Next: Dired Changes,  Prev: Mail Changes,  Up: Version 19
  300.  
  301. Changes in Info
  302. ===============
  303.  
  304.    There are new commands in Info mode.
  305.  
  306. `]'
  307.      Move forward a node, going up and down levels as needed in a
  308.      depth-first tree walk.  This command treats all the nodes in the
  309.      file as forming a single sequence in which the "children" of a
  310.      node follow that node. It is the equivalent of reading a printed
  311.      manual sequentially.
  312.  
  313. `['
  314.      Similar, but move backward.
  315.  
  316. `<'
  317.      Move to the top node of the current Info file.
  318.  
  319. `>'
  320.      Move to the last node of the file.
  321.  
  322. `SPC'
  323.      Scroll through this node, or advance to the next node in
  324.      depth-first order (like `]').
  325.  
  326. `i STRING RET'
  327.      Move to the node associated with STRING in the index or indices of
  328.      this manual.  If there is more than one match for STRING, the `i'
  329.      command finds the first match.
  330.  
  331. `,'
  332.      Find the next match for the string in the previous `i' command, and
  333.      go to that node.
  334.  
  335.    If you click the middle mouse button near a cross-reference, menu
  336. item or node pointer while in Info, you will go to the node which is
  337. referenced.
  338.  
  339.    The variable `Info-directory-list' specifies a list of directory
  340. names that contain Info files.  Each time Info looks for an Info file,
  341. it searches all these directories.  This makes it easy to install the
  342. Info files that come with various packages.  You can specify the path
  343. with the environment variable `INFOPATH'.
  344.  
  345. 
  346. File: emacs,  Node: Dired Changes,  Next: GNUS,  Prev: Info Changes,  Up: Version 19
  347.  
  348. Changes in Dired
  349. ================
  350.  
  351.    Dired has many new features which allow you to do these things:
  352.  
  353.    * Make distinguishable types of marks for different operations.
  354.  
  355.    * Rename, copy, or make links to many files at once.
  356.  
  357.    * Display contents of subdirectories in the same Dired buffer as the
  358.      parent directory.
  359.  
  360. * Menu:
  361.  
  362. * Marks in Dired::        Flagging for deletion vs marking for other actions.
  363. * Multiple Files::        How to copy, rename, print, compress, etc.
  364.                   either one file or several files.
  365. * Shell Commands in Dired:: Running a shell command on the marked files.
  366. * Dired Regexps::        Using patterns to rename multiple files.
  367. * Dired Case Conversion::   Converting file names to upper or lower case.
  368. * Comparison in Dired::        Running `diff' by way of Dired.
  369. * Subdirectories in Dired:: Adding subdirectories to the Dired buffer.
  370. * Hiding Subdirectories::   Making subdirectories visible or invisible.
  371. * Editing Dired Buffer::    Discarding lines for files of no interest.
  372. * Dired and Find::        Using `find' to select the files for Dired to show.
  373.  
  374. 
  375. File: emacs,  Node: Marks in Dired,  Next: Multiple Files,  Up: Dired Changes
  376.  
  377. Setting and Clearing Marks
  378. --------------------------
  379.  
  380.    There are now two kinds of marker that you can put on a file in
  381. Dired: `D' for deletion, and `*' for any other kind of operation. The
  382. `x' command deletes only files marked with `D', and most other Dired
  383. commands operate only on the files marked with `*'.
  384.  
  385.    To mark files with `D' (also called "flagging" the files), you can
  386. use `d' as usual.  Here are some commands for marking with `*' (and
  387. also for unmarking):
  388.  
  389. `m'
  390.      Mark the current file with `*', for an operation other than
  391.      deletion (`dired-mark').
  392.  
  393. `*'
  394.      Mark all executable files (`dired-mark-executables'). With a
  395.      prefix argument, unmark all those files.
  396.  
  397. `@'
  398.      Mark all symbolic links (`dired-mark-symlinks').  With a prefix
  399.      argument, unmark all those files.
  400.  
  401. `/'
  402.      Mark all files which are actually directories, except for `.' and
  403.      `..' (`dired-mark-directories').  With a prefix argument, unmark
  404.      all those files.
  405.  
  406. `M-DEL'
  407.      Remove a specific or all marks from every file
  408.      (`dired-unmark-all-files'). With an argument, query for each
  409.      marked file. Type your help character, usually `C-h', at that time
  410.      for help.
  411.  
  412. `c OLD NEW'
  413.      Replace all marks that use the character OLD with marks that use
  414.      the character NEW.  You can use almost any character as a mark
  415.      character by means of this command, to distinguish various classes
  416.      of files.  If OLD is ` ', then the command operates on all
  417.      unmarked files; if NEW is ` ', then the command unmarks the files
  418.      it acts on.
  419.  
  420.      To illustrate the power of this command, here is how to put `*'
  421.      marks on all the files that were unmarked, while unmarking all
  422.      those that had `*' marks:
  423.  
  424.           c * t c SPC * c t SPC
  425.  
  426. 
  427. File: emacs,  Node: Multiple Files,  Next: Shell Commands in Dired,  Prev: Marks in Dired,  Up: Dired Changes
  428.  
  429. Operating on Multiple Files
  430. ---------------------------
  431.  
  432.    The Dired commands to operate on files (rename them, copy them, and
  433. so on) have been generalized to work on multiple files.  There are also
  434. some additional commands in this series.
  435.  
  436.    All of these commands use the same convention to decide which files
  437. to manipulate:
  438.  
  439.    * If you give the command a numeric prefix argument N, it operates
  440.      on the next N files, starting with the current file.
  441.  
  442.    * Otherwise, if there are marked files, the commands operate on all
  443.      the marked files.
  444.  
  445.    * Otherwise, the command operates on the current file only.
  446.  
  447.    Here are the commands that operate on multiple files in this way:
  448.  
  449. `C'
  450.      Copy the specified files (`dired-do-copy').  You must specify a
  451.      directory to copy into, or (if copying a single file) a new name.
  452.  
  453.      If `dired-copy-preserve-time' is non-`nil', then copying with this
  454.      command sets the modification time of the new file to be the same
  455.      as that of the old file.
  456.  
  457. `R'
  458.      Rename the specified files (`dired-do-rename').  You must specify
  459.      a directory to rename into, or (if renaming a single file) a new
  460.      name.
  461.  
  462.      Dired automatically changes the visited file name of buffers
  463.      associated with renamed files so that they refer to the new names.
  464.  
  465. `H'
  466.      Make hard links to the specified files (`dired-do-hardlink'). You
  467.      must specify a directory to make the links in, or (if making just
  468.      one link) the name to give the link.
  469.  
  470. `S'
  471.      Make symbolic links to the specified files (`dired-do-symlink').
  472.      You must specify a directory to make the links in, or (if making
  473.      just one link) the name to give the link.
  474.  
  475. `M'
  476.      Change the mode (also called "permission bits") of the specified
  477.      files (`dired-do-chmod').  This calls the `chmod' program, so you
  478.      can describe the desired mode change with any argument that
  479.      `chmod' would handle.
  480.  
  481. `G'
  482.      Change the group of the specified files (`dired-do-chgrp').
  483.  
  484. `O'
  485.      Change the owner of the specified files (`dired-do-chown'). (On
  486.      most systems, only the superuser can do this.)
  487.  
  488.      The variable `dired-chown-program' specifies the name of the
  489.      program to use to do the work (different systems put `chown' in
  490.      different places.
  491.  
  492. `Z'
  493.      Compress or uncompress the specified files. If the file appears to
  494.      be a compressed file, it is uncompressed; otherwise, it is
  495.      compressed (`dired-do-compress').
  496.  
  497. `L'
  498.      Load the specified Emacs Lisp files (`dired-do-load').
  499.  
  500. `B'
  501.      Byte compile the specified Emacs Lisp files
  502.      (`dired-do-byte-compile').
  503.  
  504. `P'
  505.      Print the specified files (`dired-do-print').  This command uses
  506.      the variables `lpr-command' and `lpr-switches' just as `lpr-file'
  507.      does (*note Hardcopy::.).
  508.  
  509. 
  510. File: emacs,  Node: Shell Commands in Dired,  Next: Dired Regexps,  Prev: Multiple Files,  Up: Dired Changes
  511.  
  512. Shell Commands in Dired
  513. -----------------------
  514.  
  515.    The dired command `!' (`dired-do-shell-command') reads a shell
  516. command string in the minibuffer and runs the shell command on all the
  517. specified files.  There are two ways of applying a shell command to
  518. multiple files:
  519.  
  520.    * If you use `*' in the shell command, then it runs just once, with
  521.      the list of file names substituted for the `*'.
  522.  
  523.      Thus, `! tar cf foo.tar * RET' runs `tar' on the entire list of
  524.      file names, putting them into one tar file `foo.tar'.  The file
  525.      names are inserted in the order that they appear in the Dired
  526.      buffer.
  527.  
  528.    * If the command string doesn't contain `*', then it runs once *for
  529.      each file*, with the file name attached at the end.
  530.  
  531.      For example, `! uudecode RET' runs `uudecode' on each file.
  532.  
  533.    What if you want to run the shell command once for each file but with
  534. the file name inserted in the middle?  Or if you want to use the file
  535. names in a more complicated fashion?  Use a shell loop.  For example,
  536. this shell command would run `uuencode' on each of the specified files,
  537. writing the output into a corresponding `.uu' file:
  538.  
  539.      for file in *; uuencode $file $file >$file.uu; done
  540.  
  541.    The working directory for the shell command is the top level
  542. directory of the Dired buffer.
  543.  
  544.    The `!' command does not attempt to update the Dired buffer to show
  545. new or modified files, because it doesn't know what those files might
  546. be.  Type `g' to update the Dired buffer.
  547.  
  548. 
  549. File: emacs,  Node: Dired Regexps,  Next: Dired Case Conversion,  Prev: Shell Commands in Dired,  Up: Dired Changes
  550.  
  551. Regular Expression File Name Substitution
  552. -----------------------------------------
  553.  
  554.    Here are commands that select files according to a regular
  555. expression:
  556.  
  557. `% m REGEXP RET'
  558.      Mark all files whose names match the regular expression REGEXP
  559.      (`dired-mark-files-regexp').
  560.  
  561.      Only the non-directory part of the file name is used in matching. 
  562.      Use `^' and `$' to anchor matches.  Exclude subdirs by hiding them
  563.      (*note Hiding Subdirectories::.).
  564.  
  565. `% d REGEXP RET'
  566.      Flag for deletion all files whose names match the regular
  567.      expression REGEXP (`dired-flag-files-regexp').
  568.  
  569. `% R FROM RET TO RET'
  570. `% C FROM RET TO RET'
  571. `% H FROM RET TO RET'
  572. `% S FROM RET TO RET'
  573.      These four commands rename, copy, make hard links and make soft
  574.      links, in each case computing the new name by regular expression
  575.      substitution from the name of the old file.
  576.  
  577.    The four regular expression substitution commands effectively perform
  578. `query-replace-regexp' on the selected file names in the Dired buffer. 
  579. They read two arguments: a regular expression FROM, and a substitution
  580. pattern TO.  Each selected file name is matched against the regular
  581. expression, and then the part which matched is replaced with the
  582. substitution pattern.  You can use `\&' and `\DIGIT' in the
  583. substitution pattern to refer to all or part of the old file name.
  584.  
  585.    Thus, `% R ^.*$ RET x-\& RET' renames each selected file by
  586. prepending `x-' to its name.  The inverse of this is to remove `x-'
  587. from the front of each file name.  One way to do that is `% R ^x-.*$
  588. RET \& RET'; another is `% R ^x- RET RET'.  (Use `^' and `$' to anchor
  589. matches that should span the whole filename.)
  590.  
  591.    If the regular expression matches more than once in a file name,
  592. only the first match is replaced.
  593.  
  594.    Normally, the replacement process does not consider the directory
  595. names; it operates on the file name within the directory.  If you
  596. specify a prefix argument of zero, then replacement affects the entire
  597. file name.
  598.  
  599.    Often you will want to apply the command to all files matching the
  600. same REGEXP that you use in the command.  To do this, mark those files
  601. with `% m REGEXP RET', then use the same regular expression in `% R'. 
  602. To make this easier, `% R' uses the last regular expression specified
  603. in a `%' command as a default.
  604.  
  605. 
  606. File: emacs,  Node: Dired Case Conversion,  Next: Comparison in Dired,  Prev: Dired Regexps,  Up: Dired Changes
  607.  
  608. Dired Case Conversion
  609. ---------------------
  610.  
  611.    Here are commands for changing the case of selected files:
  612.  
  613. `% u'
  614.      Rename each of the selected files to an upper case name
  615.      (`dired-upcase').
  616.  
  617. `% l'
  618.      Rename each of the selected files to a lower case name
  619.      (`dired-downcase').
  620.  
  621. 
  622. File: emacs,  Node: Comparison in Dired,  Next: Subdirectories in Dired,  Prev: Dired Case Conversion,  Up: Dired Changes
  623.  
  624. File Comparison with Dired
  625. --------------------------
  626.  
  627.    Here are two commands to run `diff' on selected files:
  628.  
  629. `='
  630.      Compare the current file with another file (the file at the mark),
  631.      by running the `diff' program (`dired-diff').  The file at the
  632.      mark is the first argument of `diff', and the file at point is the
  633.      second argument.
  634.  
  635. `M-='
  636.      Compare the current file with its backup file
  637.      (`dired-backup-diff'). If there are several numerical backups, use
  638.      the most recent one.  If this file is a backup, compare it to its
  639.      original.  The backup file is the first file given to `diff'.
  640.  
  641. 
  642. File: emacs,  Node: Subdirectories in Dired,  Next: Hiding Subdirectories,  Prev: Comparison in Dired,  Up: Dired Changes
  643.  
  644. Subdirectories in Dired
  645. -----------------------
  646.  
  647.    One Dired buffer can now display more than one directory.
  648.  
  649.    The simplest way to include multiple directories is to specify the
  650. options `-lR' for running `ls'.  That produces a recursive directory
  651. listing showing all subdirectories, all within the same Dired buffer.
  652.  
  653.    But the simplest way is not usually the most convenient way--usually
  654. the complete recursive listing is more than you want.  So there is a
  655. Dired command to insert a single subdirectory into the Dired buffer:
  656.  
  657. `i'
  658.      Use the `i' (`dired-maybe-insert-subdir') command on a line that
  659.      describes a file which is a directory.  It inserts the contents of
  660.      that directory into the same Dired buffer.  Inserted subdirectory
  661.      contents follow the top-level directory of the Dired buffer, just
  662.      as they do in `ls -lR' output.
  663.  
  664.      If the subdirectory's contents are already present in the buffer,
  665.      the `i' command just moves to it (type `l' (`dired-do-redisplay')
  666.      to refresh it).  It sets the Emacs mark before moving, so `C-x
  667.      C-x' takes you back to the old position in the buffer.
  668.  
  669.    When you have subdirectories in the Dired buffer, you can use the
  670. page motion commands `C-x [' and `C-x ]' to move by entire directories.
  671.  
  672.    The following commands move up and down in the tree of directories
  673. in one Dired buffer:
  674.  
  675. `C-M-u'
  676.      Go up to the parent directory's headerline (`dired-tree-up').
  677.  
  678. `C-M-d'
  679.      Go down in the tree, to the first subdirectory's headerline
  680.      (`dired-tree-down').
  681.  
  682.    The following commands move forwards and backwards to subdirectory
  683. headerlines:
  684.  
  685. `C-M-n'
  686.      Go to next subdirectory headerline, regardless of level
  687.      (`dired-next-subdir').
  688.  
  689. `C-M-p'
  690.      Go to previous subdirectory headerline, regardless of level
  691.      (`dired-prev-subdir').
  692.  
  693. 
  694. File: emacs,  Node: Hiding Subdirectories,  Next: Editing Dired Buffer,  Prev: Subdirectories in Dired,  Up: Dired Changes
  695.  
  696. Hiding Subdirectories
  697. ---------------------
  698.  
  699.    "Hiding" a subdirectory means to make it invisible, except for its
  700. headerline.  Files inside a hidden subdirectory are never considered by
  701. Dired.  For example, the commands to operate on marked files ignore
  702. files in hidden directories even if they are marked.  Thus you can use
  703. hiding to temporarily exclude subdirectories from operations without
  704. having to remove the markers.
  705.  
  706.    The hiding commands toggle; that is they unhide what was hidden and
  707. vice versa.
  708.  
  709. `$'
  710.      Hide or reveal the current subdirectory and move point to the next
  711.      subdirectory (`dired-hide-subdir').  A prefix argument serves as a
  712.      repeat count.
  713.  
  714. `M-$'
  715.      Hide all subdirectories, leaving only their header lines
  716.      (`dired-hide-all').  Or, if any subdirectory is currently hidden,
  717.      make all subdirectories visible again.  You can use this command
  718.      to get an overview in very deep directory trees or to move quickly
  719.      to subdirectories far away.
  720.  
  721. 
  722. File: emacs,  Node: Editing Dired Buffer,  Next: Dired and Find,  Prev: Hiding Subdirectories,  Up: Dired Changes
  723.  
  724. Editing the Dired Buffer
  725. ------------------------
  726.  
  727. `l'
  728.      Update the specified files in a Dired buffer.  This means reading
  729.      their current status from the file system and changing the buffer
  730.      to reflect it properly (`dired-do-redisplay').
  731.  
  732.      If you use this command on a subdirectory header line, it updates
  733.      the contents of the subdirectory.
  734.  
  735. `g'
  736.      Update the entire contents of the Dired buffer (`revert-buffer'). 
  737.      Preserve all marks except for those on files that have vanished. 
  738.      Hidden subdirectories are updated but remain hidden.
  739.  
  740. `k'
  741.      Kill all marked lines (`dired-do-kill-lines').  With a prefix
  742.      argument, kill that many lines starting with the current line.
  743.  
  744.      This command does not delete files; it just deletes text from the
  745.      Dired buffer.
  746.  
  747.      If you kill the line for a file that is a directory, then its
  748.      contents are also deleted from the buffer.  Typing `C-u k' on the
  749.      header line for a subdirectory is another way to delete a
  750.      subdirectory from the Dired buffer.
  751.  
  752.      The `g' command will bring back any individual lines that you have
  753.      killed in this way, but not subdirectories--you must use `i' to
  754.      reinsert each subdirectory.
  755.  
  756. 
  757. File: emacs,  Node: Dired and Find,  Prev: Editing Dired Buffer,  Up: Dired Changes
  758.  
  759. Dired and `find'
  760. ----------------
  761.  
  762.    You can select a set of files for display in a Dired buffer more
  763. flexibly by using the `find' utility to choose the files.
  764.  
  765.    To search for files with names matching a wildcard pattern use
  766. `find-name-dired'.  Its arguments are DIRECTORY and PATTERN.  It
  767. selects all the files in DIRECTORY or its subdirectories whose own
  768. names match PATTERN.
  769.  
  770.    The files thus selected are displayed in a Dired buffer in which the
  771. ordinary Dired commands are available.
  772.  
  773.    If you want to test the contents of files, rather than their names,
  774. use `find-grep-dired'.  This command takes two minibuffer arguments,
  775. DIRECTORY and REGEXP; it selects all the files in DIRECTORY or its
  776. subdirectories that contain a match for REGEXP.  It works by running
  777. `find' and `grep'.
  778.  
  779.    The most general command in this series is `find-dired', which lets
  780. you specify any condition that `find' can test.  It takes two
  781. minibuffer arguments, DIRECTORY and FIND-ARGS; it runs `find' in
  782. DIRECTORY with FIND-ARGS as the arguments to `find' that specify which
  783. files to accept.  To use this command, you need to know how to use
  784. `find'.
  785.  
  786. 
  787. File: emacs,  Node: GNUS,  Next: Calendar/Diary,  Prev: Dired Changes,  Up: Version 19
  788.  
  789. GNUS
  790. ====
  791.  
  792.    GNUS is an Emacs subsystem for reading and responding to netnews. 
  793. You can use GNUS to browse through news groups, look at summaries of
  794. articles in specific group, and read articles of interest.  You can
  795. respond to authors or write replies to all the readers of a news group.
  796.  
  797.    This document introduces GNUS and describes several basic features.
  798. Full documentation will appear in `The GNU Emacs Extensions Manual'.
  799.  
  800.    To start GNUS, type `M-x gnus RET'.
  801.  
  802. * Menu:
  803.  
  804. * Buffers of GNUS::   The Newsgroups, Summary and Article buffers.
  805. * GNUS Startup::      What you should know about starting GNUS.
  806. * Summary of GNUS::   A short description of the basic GNUS commands.
  807.  
  808. 
  809. File: emacs,  Node: Buffers of GNUS,  Next: GNUS Startup,  Up: GNUS
  810.  
  811. GNUS's Three Buffers
  812. --------------------
  813.  
  814.    GNUS creates and uses three Emacs buffers, each with its own
  815. particular purpose and its own major mode.
  816.  
  817.    The "Newsgroup buffer" contains a list of newsgroups.  This is the
  818. first buffer that GNUS displays when it starts up.  Normally the list
  819. contains only the newsgroups to which you subscribe (which are listed in
  820. your `.newsrc' file) and which contain unread articles.  Use this
  821. buffer to select a specific newsgroup.
  822.  
  823.    The "Summary buffer" lists the articles in a single newsgroup,
  824. including their subjects, their numbers, and who posted them.  GNUS
  825. creates a Summary buffer for a newsgroup when you select the group in
  826. the Newsgroup buffer.  Use this buffer to select an article, and to move
  827. around in an article.
  828.  
  829.    The "Article buffer" displays the text of an article.  You rarely
  830. need to select this buffer because you can read the text while keeping
  831. the Summary buffer selected.
  832.  
  833. 
  834. File: emacs,  Node: GNUS Startup,  Next: Summary of GNUS,  Prev: Buffers of GNUS,  Up: GNUS
  835.  
  836. When GNUS Starts Up
  837. -------------------
  838.  
  839.    At startup, GNUS reads your `.newsrc' news initialization file and
  840. attempts to communicate with the local news server, which is a
  841. repository of news articles.  The news server need not be the same
  842. computer you are logged in on.
  843.  
  844.    If you start GNUS and connect to the server, but do not see any
  845. newsgroups listed in the Newsgroup buffer, type `L' to get a listing of
  846. all the newsgroups.  Then type `u' to unsubscribe from particular
  847. newsgroups.  (Move the cursor using `n' and `p' or the usual Emacs
  848. commands.)  When you quit with `q', GNUS automatically records the
  849. subscribed groups in your `.newsrc' initialization file.  (You do not
  850. have to edit this file yourself, although you may.) Next time you start
  851. GNUS, you will see only the subscribed groups.
  852.  
  853. 
  854. File: emacs,  Node: Summary of GNUS,  Prev: GNUS Startup,  Up: GNUS
  855.  
  856. Summary of GNUS Commands
  857. ------------------------
  858.  
  859.    Reading news is a two step process:
  860.  
  861.   1. Choose a newsgroup in the Newsgroup buffer.
  862.  
  863.   2. Choose an article in the Summary buffer.  The article is displayed
  864.      in the Article buffer in a large window, below the Summary buffer
  865.      in its small window.
  866.  
  867.    Each buffer has commands particular to it, but commands that do the
  868. same things have similar keybindings.  Here are commands for the
  869. Newsgroup and Summary buffers:
  870.  
  871. `z'
  872.      In the Newsgroup buffer, suspend GNUS.  You can return to GNUS
  873.      later by selecting the Newsgroup buffer and typing `g' to get
  874.      newly arrived articles.
  875.  
  876. `q'
  877.      In the Newsgroup buffer, update your `.newsrc' initialization file
  878.      and quit GNUS.
  879.  
  880.      In the Summary buffer, exit the current newsgroup and return to the
  881.      Newsgroup buffer.  Thus, typing `q' twice quits GNUS.
  882.  
  883. `L'
  884.      In the Newsgroup buffer, list all the newsgroups available on your
  885.      news server.  This may be a long list!
  886.  
  887. `l'
  888.      In the Newsgroup buffer, list only the newsgroups to which you
  889.      subscribe and which contain unread articles.
  890.  
  891. `u'
  892.      In the Newsgroup buffer, unsubscribe from (or subscribe to) the
  893.      newsgroup listed in the line that point is on.  When you quit GNUS
  894.      by typing `q', GNUS lists your subscribed-to newsgroups in your
  895.      `.newsrc' file.  The next time you start GNUS, you see only the
  896.      newsgroups listed in your `.newsrc' file.
  897.  
  898.      You may also edit your `.newsrc' file directly in Emacs.  First
  899.      quit GNUS, then visit the `.newsrc' file.  For example, you can
  900.      remove all the `alt.' groups by going to the beginning of the file
  901.      and typing `M-x flush-lines RET alt RET'.  Next time you start
  902.      GNUS, you will see only the newsgroups still listed in the
  903.      `.newsrc' file.
  904.  
  905. `SPC'
  906.      In the Newsgroup buffer, select the group on the line under the
  907.      cursor and display the first unread article in that group.
  908.  
  909.      In the Summary buffer,
  910.  
  911.         - Select the article on the line under the cursor if none is
  912.           selected.
  913.  
  914.         - Scroll the text of the article if one is selected.
  915.  
  916.         - Select the next unread article if at the end of the current
  917.           article.
  918.  
  919.      Thus, you can move through all the articles by repeatedly typing
  920.      SPC.
  921.  
  922. `DEL'
  923.      In the Newsgroup Buffer, move point to the previous newsgroup
  924.      containing unread articles.
  925.  
  926.      In the Summary buffer, scroll the text of the article backwards.
  927.  
  928. `n'
  929.      Move point to the next unread newsgroup, or select the next unread
  930.      article.
  931.  
  932. `p'
  933.      Move point to the previous unread newsgroup, or select the previous
  934.      unread article.
  935.  
  936. `C-n'
  937. `C-p'
  938.      Move point to the next or previous item, even if it is marked as
  939.      read. This does not select the article or newsgroup on that line.
  940.  
  941. `s'
  942.      In the Summary buffer, do an incremental search of the current
  943.      text in the Article buffer, just as if you switched to the Article
  944.      buffer and typed `C-s'.
  945.  
  946. `M-s REGEXP RET'
  947.      In the Summary buffer, search forward for articles containing a
  948.      match for REGEXP.
  949.  
  950. `C-c C-s C-n'
  951. `C-c C-s C-s'
  952. `C-c C-s C-d'
  953. `C-c C-s C-a'
  954.      In the Summary buffer, sort the list of articles by number,
  955.      subject, date, or author.
  956.  
  957. `C-M-n'
  958. `C-M-p'
  959.      In the Summary buffer, read the next or previous article with the
  960.      same subject as the current article.
  961.  
  962. 
  963. File: emacs,  Node: Calendar/Diary,  Next: Version Control,  Prev: GNUS,  Up: Version 19
  964.  
  965. Calendar and Diary
  966. ==================
  967.  
  968.    The calendar facility in Emacs 19 is almost completely new, and it
  969. comes with a diary feature.  You can use the diary to keep track of
  970. appointments, anniversaries, and other events.
  971.  
  972.    To use the diary, you must write diary entries in a particular file,
  973. called your "diary file".  Its name is `~/diary'.  Emacs displays the
  974. entries for particular dates by finding them in the diary file,
  975. formatting them, and displaying them in a diary display buffer.
  976.  
  977. * Menu:
  978.  
  979. * Calendar::            New features of the calendar proper.
  980. * Entries: Diary Entries.    The location and form of a diary entry.
  981. * New Entries::            Inserting diary entries using the calendar.
  982. * Displaying Diary::            How to display diary entries from the calendar.
  983. * European Calendar Style ::    Day-month-year style for dates.
  984. * Simple and Fancy::            The diary has two modes for display.
  985. * Other Diary Features::        The diary has many advanced commands.
  986. * Startup Diary::        How to display your diary when you start Emacs.
  987. * Printing Diary::         Print selected entries of the diary.
  988.  
  989. 
  990. File: emacs,  Node: Calendar,  Next: Diary Entries,  Up: Calendar/Diary
  991.  
  992. Calendar
  993. --------
  994.  
  995.    In Emacs 19 you can use ordinary Emacs cursor commands to move
  996. through the calendar, which scrolls automatically to display different
  997. months or different years.  Character motion translates to days, line
  998. motion to weeks, sentence and paragraph motion to months, and page
  999. motion to years.  The vertical and horizontal scroll commands also
  1000. handle the calendar suitably.
  1001.  
  1002.    `p d' displays the selected date as a day within the year.  `g d'
  1003. selects a date given as month, day, year.  Type `.' to go back to
  1004. today's date.
  1005.  
  1006.    The command `M-=', which normally gives the number of lines in the
  1007. region, in Calendar mode gives the number of days in the region
  1008. (`calendar-count-days-region').
  1009.  
  1010.    The calendar facility also knows about other important calendars. 
  1011. The commands for these come in pairs; the commands to convert *to*
  1012. another calendar start with the `p' prefix (short for "print"), and the
  1013. commands to convert from another calendar start with the `g' prefix
  1014. (short for "go to").  Here is a complete list:
  1015.  
  1016. `g a', `p a'
  1017.      The astronomical calendar, a simple count of days elapsed since
  1018.      noon, Monday, January 1, 4713 B.C. on the Julian calendar.  The
  1019.      number of days elapsed is also called the "Julian day number"
  1020.      (`calendar-goto-astro-date', `calendar-print-astro-date').
  1021.  
  1022. `g c', `p c'
  1023.      ISO commercial calendar
  1024.      (`calendar-goto-iso-date', `calendar-print-iso-date').
  1025.  
  1026. `g f', `p f'
  1027.      French revolutionary calendar
  1028.      (`calendar-goto-french-date',
  1029.      `calendar-print-french-date').
  1030.  
  1031. `g h', `p h'
  1032.      Hebrew calendar
  1033.      (`calendar-goto-hebrew-date',
  1034.      `calendar-print-hebrew-date').
  1035.  
  1036. `g i', `p i'
  1037.      Islamic calendar
  1038.      (`calendar-goto-islamic-date',
  1039.      `calendar-print-islamic-date').
  1040.  
  1041. `g j', `p j'
  1042.      Julian calendar
  1043.      (`calendar-goto-julian-date',
  1044.      `calendar-print-julian-date').
  1045.  
  1046. `p m'
  1047.      Mayan calendar (`calendar-print-mayan-date').
  1048.  
  1049.    The calendar also knows the dates of standard holidays.  Type `h'
  1050. (`calendar-cursor-holidays') to display a list of holidays for the
  1051. selected date.  This list appears in another window.  Type `x'
  1052. (`mark-calendar-holidays') to mark each day that is a holiday with `*'
  1053. in the calendar itself.  The command `u' (`calendar-unmark') turns off
  1054. this marking.
  1055.  
  1056.    At any time, you can use `M-x holidays' to display a list of
  1057. holidays for the present month and the preceding and following months.
  1058.  
  1059. 
  1060. File: emacs,  Node: Diary Entries,  Next: New Entries,  Prev: Calendar,  Up: Calendar/Diary
  1061.  
  1062. Diary Entries
  1063. -------------
  1064.  
  1065.    To use the diary feature, you must write "diary entries" that
  1066. describe plans associated with particular dates, and put them in your
  1067. "diary file", which is normally the file `~/diary'.  You can specify a
  1068. different name for it by setting the variable `diary-file'; you would
  1069. do this before using any of the commands that operate on the diary.
  1070.  
  1071.    Diary file entries follow a simple convention: begin entries with a
  1072. date at the beginning of a line, followed optionally by a time, and
  1073. then by the text of the entry:
  1074.  
  1075.      DATE OPTIONAL-TIME-OF-DAY TEXT-OF-ENTRY
  1076.  
  1077. To continue an entry over two or more lines, indent the second and
  1078. subsequent lines.  The lines of the entry after the first are called
  1079. "continuation lines".  Other lines in the diary file that are not part
  1080. of any entry are comment lines; Emacs does not display these.
  1081.  
  1082.    When you make diary entries using Calendar mode, Emacs inserts the
  1083. date for you in the appropriate format and places the cursor so you can
  1084. type the text of the entry.
  1085.  
  1086.    You can write entries in any order and Emacs will display the
  1087. entries by date.  However, time-of-day entries can be sorted
  1088. chronologically only in a diary mode called Fancy mode; in Simple mode,
  1089. Emacs displays time-of-day entries in their order in the diary file.
  1090.  
  1091. 
  1092. File: emacs,  Node: Displaying Diary,  Next: European Calendar Style,  Prev: New Entries,  Up: Calendar/Diary
  1093.  
  1094. Calendar Commands to Display Diary Entries
  1095. ------------------------------------------
  1096.  
  1097.    In Calendar mode, use the following commands to display your diary
  1098. entries:
  1099.  
  1100. `d'
  1101.      Display any diary entries for the date under the cursor
  1102.      (`view-diary-entries').
  1103.  
  1104.      With a numeric argument, Emacs shows the diary entries for that
  1105.      many successive days, starting with and including the date under
  1106.      the cursor. Thus, `2 d' displays all the entries for the selected
  1107.      date and for the following day.
  1108.  
  1109. `s'
  1110.      Display your entire diary file (`show-all-diary-entries').
  1111.  
  1112. `m'
  1113.      In the calendar, mark all visible dates that have diary entries
  1114.      (`mark-diary-entries').
  1115.  
  1116. `u'
  1117.      Unmark the calendar (`calendar-unmark').
  1118.  
  1119.    At any time, not just in Calendar mode, you can display today's diary
  1120. entries by typing:
  1121.  
  1122.      M-x diary
  1123.  
  1124. With a prefix argument N, this command displays diary entries for N
  1125. successive days, starting from and including today.
  1126.  
  1127. 
  1128. File: emacs,  Node: New Entries,  Next: Displaying Diary,  Prev: Diary Entries,  Up: Calendar/Diary
  1129.  
  1130. Calendar Commands for Making Diary Entries
  1131. ------------------------------------------
  1132.  
  1133.    Calendar mode provides several commands to help you make diary file
  1134. entries.  These commands work by visiting the diary file and inserting
  1135. the date information; you must finish the job by inserting the text of
  1136. the entry, and then save the diary file with `C-x C-s'.  The commands
  1137. are:
  1138.  
  1139. `i d'
  1140.      Add a diary entry for the selected date in the calendar
  1141.      (`insert-diary-entry').
  1142.  
  1143. `i w'
  1144.      Add a diary entry for the selected day of the week
  1145.      (`insert-weekly-diary-entry').  This entry is displayed each week
  1146.      on the selected day.
  1147.  
  1148. `i m'
  1149.      Add a diary entry for the selected day of the month
  1150.      (`insert-monthly-diary-entry').  This entry is displayed each month
  1151.      on the selected day.
  1152.  
  1153. `i y'
  1154.      Add a diary entry for the selected day of the year
  1155.      (`insert-yearly-diary-entry').  This entry is displayed each year
  1156.      on the selected day.
  1157.  
  1158.    Here are commands for entering more complex kinds of diary entries in
  1159. Calendar mode.  These kinds of entries operate properly only in Fancy
  1160. Diary Display mode (*note Simple and Fancy::.).
  1161.  
  1162. `i a'
  1163.      Add an anniversary diary entry for the selected date
  1164.      (`insert-anniversary-diary-entry').
  1165.  
  1166.      Select the date you want remembered, in the proper year--if it is a
  1167.      birthday, remember to go to the person's year of birth!  Then type
  1168.      `i a' and enter the text of the entry.
  1169.  
  1170.      In the textual part of the entry you can type `%d'.  When Emacs
  1171.      displays the entry in the diary buffer, the `%d' is replaced by the
  1172.      number of years since the date.  Thus, if you use `%d years old' as
  1173.      the text of the entry, it will display as `53 years old' on the
  1174.      53rd birthday.
  1175.  
  1176. `i c'
  1177.      Add a cyclic diary entry starting at the date
  1178.      (`insert-cyclic-diary-entry').  An entry is displayed on a
  1179.      specified starting date and then is repeatedly displayed at the
  1180.      specified interval.  This is useful for ten day cycles of
  1181.      preventive maintenance and similar activities.
  1182.  
  1183.      To use this command, first select the start date.  The command
  1184.      reads the interval (the number of days between repetitions) using
  1185.      the minibuffer, then inserts the beginning of the entry.
  1186.  
  1187. `i b'
  1188.      Add a block diary entry for the current region
  1189.      (`insert-block-diary-entry').  With a block entry, Emacs writes
  1190.      the same message in the display for successive days.
  1191.  
  1192.      Position point and mark at the beginning and end of the block of
  1193.      days you want entered and type `i b'.  This sets up the diary
  1194.      entry's date info and positions point so you can write the text of
  1195.      the entry. People usually use this command for trips or vacations.
  1196.  
  1197. 
  1198. File: emacs,  Node: European Calendar Style,  Next: Simple and Fancy,  Prev: Displaying Diary,  Up: Calendar/Diary
  1199.  
  1200. European Calendar Style
  1201. -----------------------
  1202.  
  1203.    By default, Emacs interprets and displays diary dates in civilian
  1204. American form, `MONTH/DAY/YEAR': `2/15/1993', or `February 15, 1993'.
  1205.  
  1206.    Alternatively, you can specify the European calendar style for
  1207. writing dates: `DAY/MONTH/YEAR', `15/2/1993' or `15 February 1993'.  To
  1208. do this, set the variable `european-calendar-style' to `t', before
  1209. using any calendar or diary command.  This also affects display of
  1210. dates.
  1211.  
  1212.    Here's how to do this in your `.emacs' file:
  1213.  
  1214.      (setq european-calendar-style t)
  1215.  
  1216. 
  1217. File: emacs,  Node: Simple and Fancy,  Next: Other Diary Features,  Prev: European Calendar Style,  Up: Calendar/Diary
  1218.  
  1219. Simple and Fancy Diary Display
  1220. ------------------------------
  1221.  
  1222.    There are two modes for displaying a subset of diary entries: Simple
  1223. mode and Fancy mode.  Fancy mode provides a more dramatic display for
  1224. the diary, and can also display the actual matching date for diary
  1225. entries that match more than one date.
  1226.  
  1227.    By default, Emacs uses Simple mode, which is quicker than Fancy mode.
  1228. Another advantage of Simple mode is that you can edit the displayed
  1229. diary entries "in place" and save them.  When you use Fancy mode, it is
  1230. useless to edit the displayed subset of the diary; instead you must
  1231. visit the diary file separately.  To select Fancy mode, set
  1232. `diary-display-hook' to `fancy-diary-display' like this:
  1233.  
  1234.      (setq diary-display-hook 'fancy-diary-display)
  1235.  
  1236. 
  1237. File: emacs,  Node: Other Diary Features,  Next: Startup Diary,  Prev: Simple and Fancy,  Up: Calendar/Diary
  1238.  
  1239. Other Diary Features
  1240. --------------------
  1241.  
  1242.    Here are some additional diary features.  These will be explained in
  1243. full in `The GNU Emacs Extensions Manual'.
  1244.  
  1245.    You can schedule meetings on a date such as the first Tuesday of
  1246. every month.  This is called an "offset" date.  The diary has commands
  1247. for specifying such meetings, but not in Calendar mode.  To create such
  1248. an entry, you need to edit the diary file yourself.
  1249.  
  1250.    You can make entries according to Hebrew and Islamic dates.  Calendar
  1251. mode provides commands of the form `i h d' to add a diary entry for the
  1252. Hebrew date corresponding to the selected date and `i i d' to add a
  1253. diary entry for the Islamic date corresponding to the selected date. 
  1254. You can make entries that repeat every week, month, or year. Before
  1255. using these commands, you must set the
  1256. `nongregorian-diary-listing-hook' and the
  1257. `nongregorian-diary-marking-hook' in your `.emacs' file.
  1258.  
  1259.    You can include other diary files in your diary display.  This way, a
  1260. group of people can share a common diary file.
  1261.  
  1262. 
  1263. File: emacs,  Node: Startup Diary,  Next: Printing Diary,  Prev: Other Diary Features,  Up: Calendar/Diary
  1264.  
  1265. Displaying your Diary on Emacs Startup
  1266. --------------------------------------
  1267.  
  1268.    If you start a new Emacs each day, you might want to display your
  1269. diary automatically at that time.  To do so, put this in your `.emacs'
  1270. file:
  1271.  
  1272.      (diary)
  1273.  
  1274.    If you want to see both the calendar and your diary at startup, use
  1275. this instead:
  1276.  
  1277.      (setq view-diary-entries-initially t)
  1278.      (calendar)
  1279.  
  1280. 
  1281. File: emacs,  Node: Printing Diary,  Prev: Startup Diary,  Up: Calendar/Diary
  1282.  
  1283. Printing the Displayed Part of the Diary
  1284. ----------------------------------------
  1285.  
  1286.    To print the selected diary entries as they appear on the screen, use
  1287. `M-x print-diary-entries'.  The same variables that customize
  1288. `lpr-buffer' also affect this command.
  1289.  
  1290.    In Simple mode, the diary display buffer uses selective display
  1291. (*note Selective Display::.).  This means that what you see on the
  1292. screen is just part of the text in the Emacs buffer.  The diary entries
  1293. that don't apply to the dates you asked for are still in the buffer, but
  1294. hidden.  The ordinary printing commands such as `lpr-buffer' would not
  1295. do what you want; they print the entire text, including the hidden
  1296. parts.  This is why we need `print-diary-entries'.
  1297.  
  1298. 
  1299. File: emacs,  Node: Version Control,  Next: Emerge,  Prev: Calendar/Diary,  Up: Version 19
  1300.  
  1301. Version Control
  1302. ===============
  1303.  
  1304.    "Version control systems" are packages that can record multiple
  1305. versions of a source file, usually storing the unchanged parts of the
  1306. file just once.  Version control systems also record history information
  1307. such as the creation time of each version, who created it, and a
  1308. description of what was changed in that version.
  1309.  
  1310.    The GNU project recommends the version control system known as RCS,
  1311. which is free software and available from the Free Software Foundation.
  1312. Emacs supports use of either RCS or SCCS (a proprietary, but widely
  1313. used, version control system that is not quite as powerful as RCS)
  1314. through a facility called VC.  The same Emacs commands work with either
  1315. RCS or SCCS, so you hardly have to know which one of them you are using.
  1316.  
  1317. * Menu:
  1318.  
  1319. * Concepts of VC::
  1320. * Editing with VC::
  1321. * Variables for Check-in/out::
  1322. * Comparing Versions::
  1323. * VC Status::
  1324. * Renaming and VC::
  1325. * Snapshots::
  1326. * Log Entries::
  1327. * Change Logs and VC::
  1328. * Version Headers::
  1329.  
  1330.